Lab 8: DHCP & FTP in Cisco Packet Tracer β€” 3 Sessions

0 / 0

Lab 8: DHCP and FTP in Cisco Packet Tracer β€” 3 Sessions

Not markedThis lab is not graded and there is nothing to submit. Save your .pkt files between sessions so you can pick up where you left off.

Overview

This lab is split into three sessions of roughly 45–60 minutes each. The topology and IP plan carry forward across sessions, so save your .pkt files between sessions.

SessionModeWhat you doWhat you should see
1SoloBuild a small LAN and configure a DHCP server for it.PCs receive IPs from your DHCP server.
2Group of 3Connect three Packet Tracer instances over the network using Multiuser. One student hosts the DHCP server, two host clients.Clients on two separate computers receive leases from the third student's server.
3Group of 3Add an FTP server and exchange real (simulated) files between group members across the Multiuser link.Each student successfully downloads and uploads a file.

Prerequisites

Shared IP plan (used in all three sessions)

ItemValue
Network192.168.200.0/24
Subnet mask255.255.255.0
Default gateway (fictitious)192.168.200.1
DNS server (fictitious)8.8.8.8
DHCP server itself (static)192.168.200.5
DHCP scope192.168.200.10 – 192.168.200.100

Conventions

Session 1 β€” Solo: Build Your Own DHCP-Served LAN ~45 min Β· Solo

Save as: Session1.pkt

In This session, you build a small office LAN, then convert it from manual IP assignment to dynamic DHCP β€” and observe what happens (APIPA) when the DHCP server is unreachable.

1.1 Build the topology

  1. Open Packet Tracer β†’ File β†’ New.
  2. From the bottom-left device bar, drag onto the workspace:
    • 1 Γ— Switch 2960 (Switches category)
    • 4 Γ— PC (End Devices category) β€” name them PC1 … PC4
    • 1 Γ— Server-PT (End Devices category) β€” rename it DHCP_Server
  3. From the lightning-bolt Connections menu, pick Copper Straight-Through and connect:
    • Each PC's FastEthernet0 β†’ a free port on the switch
    • The server's FastEthernet0 β†’ a free port on the switch
  4. Wait until all link lights turn green.

1.2 Statically assign the server's IP

  1. Click DHCP_Server β†’ Desktop β†’ IP Configuration.
  2. Choose Static and enter:
    • IP Address: 192.168.200.5
    • Subnet Mask: 255.255.255.0
    • Default Gateway: 192.168.200.1
    • DNS Server: 8.8.8.8
  3. Close the dialog. Open Desktop β†’ Command Prompt and run ipconfig to confirm.

1.3 Demonstrate APIPA before enabling DHCP

Why this mattersThis step proves what happens when a client cannot reach a DHCP server.
  1. Click PC1 β†’ Desktop β†’ IP Configuration β†’ select DHCP.
  2. The status will say something like "DHCP request failed."
  3. Look at the IP β€” it will be in the 169.254.x.x range. This is APIPA, the fallback Lecture 004 covered.
  4. Take note of this address. You will replace it after enabling the server.

1.4 Configure the DHCP service on the server

  1. Click DHCP_Server β†’ Services β†’ DHCP.
  2. Fill in the serverPool entry (or create a new one):
    • Default Gateway: 192.168.200.1
    • DNS Server: 8.8.8.8
    • Start IP Address: 192.168.200.10
    • Subnet Mask: 255.255.255.0
    • Maximum Number of Users: 100
    • TFTP Server / WLC: leave 0.0.0.0
  3. Click Save.
  4. Set Service to On at the top of the dialog.
    Common mistakeForgetting to turn the service On is the #1 reason DHCP "doesn't work."

1.5 Renew leases on every PC

  1. On PC1 β†’ Desktop β†’ Command Prompt:
    ipconfig /release
    ipconfig /renew
    ipconfig
    You should now see 192.168.200.10 (the first address in the scope), with the gateway and DNS you configured.
  2. On PC2, PC3, PC4 β†’ Desktop β†’ IP Configuration β†’ click DHCP. Each will receive .11, .12, .13 respectively.

1.6 Verify connectivity

From any PC's command prompt:

ping 192.168.200.5     (the server)
ping 192.168.200.10    (PC1)

Both should reply.

1.7 You are done with Session 1 when…

  • All four PCs show a 192.168.200.1x address from ipconfig.
  • A ping 192.168.200.5 (the server) from any PC succeeds.
  • You have saved your topology as Session1.pkt so you can reopen it next session.
Session 2 β€” Group of 3: Connect Two Networks via Multiuser ~50 min Β· Group

Save as: Session2.pkt

Form groups of three. Assign roles:

  • Student A β€” Server Host: runs the DHCP server.
  • Student B β€” Client Host #1: runs two client PCs.
  • Student C β€” Client Host #2: runs two client PCs.
Group size flexibilityGroups of 2 (1 server + 1 client) or 4 (1 server + 3 clients) work identically β€” only the number of client instances changes.

The two client instances will pull DHCP leases from the server instance over a real network connection between the three students' computers. This uses Packet Tracer's Multiuser feature.

2.1 Network reachability β€” verify before you build

Each student opens a terminal/command prompt on their host OS (not inside Packet Tracer):

  • Windows: ipconfig
  • macOS / Linux: ifconfig or ip a

Note the IPv4 address of your active interface. From Student B's and Student C's host OS, ping Student A's IP:

ping <Student A's host IP>
If the ping failsYou are not on the same network. Skip to the Tailscale fallback in section 2.6.

Student A must also allow inbound TCP port 38000 through the host firewall:

  • Windows: Windows Defender Firewall β†’ Allow an app β†’ add Packet Tracer, or temporarily disable on the Private network profile only.
  • macOS: System Settings β†’ Network β†’ Firewall β†’ allow incoming connections for Packet Tracer.
  • Linux: sudo ufw allow 38000/tcp (if ufw is in use).

2.2 Student A β€” Set up the listening server

  1. Open your Session1_<lastname>.pkt from Session 1. (You already have a working DHCP server.)
  2. From the bottom-left device bar, End Devices category, find the Multiuser Connection β€” it is a separate cloud-shaped icon. Drag it onto the workspace next to your switch.
  3. From the Copper Straight-Through cable, connect the Multiuser cloud's Link0 to a free FastEthernet port on your switch.
  4. From the top menu: Extensions β†’ Multiuser β†’ Listen…
    • Confirm port 38000.
    • Set a password your group will use, e.g. lab17.
    • Set New Remote Network acceptance to Always Accept (or Prompt if you want to approve each peer manually).
    • Click OK.
  5. Share with B and C:
    • Your host IP address (from step 2.1).
    • The port (38000).
    • The password.

Save your file as Session2.pkt.

2.3 Students B and C β€” Set up the client side

Each of you does the following on your own computer:

  1. Open Packet Tracer β†’ File β†’ New.
  2. Build a small topology:
    • 1 Γ— Switch 2960
    • 2 Γ— PC (named PC-B1, PC-B2 for Student B; PC-C1, PC-C2 for Student C)
    • Connect both PCs to the switch with copper straight-through cables.
  3. Drag a Multiuser Connection (cloud icon, End Devices category) onto your workspace.
  4. Connect the Multiuser cloud to your switch with a copper straight-through cable.
  5. Click the Multiuser cloud β†’ in its dialog open the Outgoing Connections tab (or use Extensions β†’ Multiuser β†’ Connect to Another Instance). Enter:
    • Peer Address: <Student A's host IP>
    • Port: 38000
    • Password: lab17
    • Click Connect.
  6. The cloud should turn green and show Connected. If it stays red, see the gotchas.

2.4 Pull DHCP leases across the link

On each client PC (B1, B2, C1, C2):

  1. Desktop β†’ IP Configuration β†’ click DHCP.
  2. Within a few seconds the PC should display:
    • IP: 192.168.200.1x (somewhere in the scope)
    • Subnet Mask: 255.255.255.0
    • Default Gateway: 192.168.200.1
    • DNS Server: 8.8.8.8
If a PC shows 169.254.x.xThat's APIPA β€” the DHCP DISCOVER never reached Student A's server. See the gotchas table.

2.5 Group verification

  • Student A: Click DHCP_Server β†’ Services β†’ DHCP. Scroll the lease list at the bottom. You should see four entries β€” two MAC addresses from B's PCs, two from C's PCs, all with 192.168.200.x addresses. Take a screenshot of this lease table.
  • Students B and C: From any of your PCs' command prompts:
    ping 192.168.200.5     (Student A's server)
    ping 192.168.200.10    (one of B's PCs)
    ping 192.168.200.12    (one of C's PCs)
    All replies should succeed.
  • Bonus β€” see DORA on the wire: Switch to Simulation Mode (bottom-right). Trigger an ipconfig /release then /renew on a client PC and step through the four packets β€” DHCPDISCOVER β†’ DHCPOFFER β†’ DHCPREQUEST β†’ DHCPACK β€” as they cross the Multiuser cloud to Student A's server and back.

2.6 Tailscale fallback (only if you cannot reach each other on the LAN)

Skip this section entirely if your group's host-OS ping in step 2.1 already worked.This section is only needed when the classroom Wi-Fi blocks peer-to-peer traffic, when group members are on different Wi-Fi networks, or when you are doing the lab remotely from home.

What is Tailscale and why do we need it?

Packet Tracer's Multiuser feature works by opening a TCP connection on port 38000 directly between two computers. For that to succeed, the two computers must be able to reach each other's IP addresses β€” the same way two computers on a home Wi-Fi can ping each other.

In many real-world situations this is blocked:

  • Public/campus Wi-Fi often uses client isolation, meaning every device can reach the internet but cannot reach other devices on the same Wi-Fi.
  • Different networks: if Student A is on Wi-Fi at home and Student B is on cellular data, their devices have no shared network at all.
  • NAT and firewalls between networks normally prevent unsolicited inbound connections.

Tailscale is a free service that solves all three of these problems by creating a small private virtual network (a β€œtailnet”) between your devices, on top of the regular Internet. Once installed, every member of your tailnet gets an extra IP address in the 100.x.x.x range that only your tailnet members can use β€” and any device in your tailnet can reach any other, regardless of which physical network they are on. It's the same idea as a VPN, but specifically designed for connecting your own devices to each other.

When we use Tailscale here, Packet Tracer doesn't know or care about it β€” it just sees a normal IP address it can reach. We are essentially giving the group a temporary β€œvirtual classroom Wi-Fi” for the duration of the lab.

Step-by-step setup

All three students do steps 1–4 before continuing with the rest of Session 2.

  1. Create a free Tailscale account. Go to https://login.tailscale.com/start. Sign in with a Google, Microsoft, or GitHub account (no credit card needed). The free Personal plan allows up to 100 devices.
    ImportantOne group member should sign in first, then invite the other two so all three end up in the same tailnet. If each student signs in with a different account, they will each have their own private tailnet and won't be able to see each other.
    To invite teammates: in the Tailscale admin console go to Users β†’ Invite users, enter their email addresses, and have them accept the invitation when signing up.
  2. Install the Tailscale client on each computer:
  3. Confirm everyone is in the same tailnet. Open the Tailscale admin console at login.tailscale.com/admin/machines. You should see all three group members' computers listed, each with a 100.x.x.x IP address. Write these down β€” they replace the regular LAN IPs from step 2.1.
  4. Verify reachability over Tailscale. From Students B's and C's host-OS terminals, ping Student A's Tailscale IP (the 100.x.x.x one):
    ping 100.x.x.x
    You should get replies. If you don't, make sure all three Tailscale clients show as β€œConnected” (green) in their system tray / menu bar icon.
  5. Use the Tailscale IP in Packet Tracer. Now redo the Multiuser steps:
    • In step 2.2 (Student A's Listen), nothing changes β€” Tailscale just makes A's 100.x.x.x IP reachable.
    • In step 2.3 step 5 (Students B & C's Outgoing connection), enter Student A's Tailscale IP (100.x.x.x) instead of A's LAN IP.
    • Port 38000 and the password stay the same.
  6. When the lab is over, you can either keep Tailscale installed for next session or uninstall it. To temporarily disconnect without uninstalling, click the Tailscale icon in your system tray and choose Disconnect.

Common Tailscale issues

SymptomFix
Other group members don't appear in your admin consoleThey signed in with a different account. They need to accept your email invitation so you all end up in the same tailnet.
Tailscale icon shows red/offlineClick it β†’ Connect / Log in. On Windows, also check that the Tailscale service is running in services.msc.
Can ping Tailscale IP but Multiuser cloud still redStudent A's host firewall is still blocking port 38000. The firewall rule is needed in addition to Tailscale, because Tailscale only delivers the packets β€” the OS still has to accept them.

2.7 You are done with Session 2 when…

  • Each Multiuser cloud (on all three students' workspaces) is green.
  • Every client PC on B's and C's workspaces shows a 192.168.200.1x IP from DHCP.
  • Student A's DHCP lease table on the server lists all of B's and C's PCs by MAC address.
  • All group members can ping 192.168.200.5 from their PCs.
Session 3 β€” Group of 3: Exchange Files via FTP ~50 min Β· Group

Save as: Session3.pkt

Now that you have a working multi-computer network with DHCP, you'll add an FTP server to Student A's machine and use it to actually move files between group members.

ReminderPacket Tracer's "files" are short text files inside its simulated filesystem. You cannot transfer real .docx or .png files from your real desktop β€” but the FTP protocol behavior is fully realistic.

3.1 Re-establish the Session 2 connection

Repeat the connection steps from Session 2 (load your Session2.pkt files, restart Listen on Student A, reconnect Outgoing on B and C). Confirm the Multiuser clouds are green and the clients have DHCP-assigned addresses before continuing.

3.2 Student A β€” Enable the FTP server

  1. Click DHCP_Server (the same Server-PT will host FTP too) β†’ Services β†’ FTP.
  2. Set Service to On.
  3. Add a user account:
    • Username: student
    • Password: cisco
    • Permissions: check Write, Read, Delete, Rename, List (all of them).
    • Click + to add the user.
  4. Notice the file list at the bottom β€” Packet Tracer's server already contains some files like c1841-advipservicesk9-mz.124-15.T1.bin, asa842-k8.bin, etc. These are the "shared files" your group will use as test downloads.
  5. Tell B and C:
    • FTP server IP: 192.168.200.5
    • Username: student
    • Password: cisco

3.3 Students B and C β€” Download a file from Student A

On any one of your client PCs:

  1. Desktop β†’ Command Prompt.
  2. Connect:
    ftp 192.168.200.5
  3. When prompted, enter:
    • Username: student
    • Password: cisco
  4. List the available files:
    dir
  5. Download one of them (pick any from the list):
    get c1841-advipservicesk9-mz.124-15.T1.bin
    You should see a Reading file … / transfer-complete confirmation.
  6. Confirm the file landed locally on the simulated PC:
    • Close the FTP session: quit
    • On the same PC: Desktop β†’ Text Editor β†’ File β†’ Open β€” your downloaded file appears in the list.

3.4 Students B and C β€” Upload a file back to Student A

Why this mattersThis is the proof that two-way communication works across the Multiuser link.
  1. On the same PC: Desktop β†’ Text Editor β†’ File β†’ New.
  2. Type a short note, for example:
    Hello from Student B!
    This message was uploaded from PC-B1 across the Multiuser link.
  3. File β†’ Save As β†’ name it helloFromB.txt (Student C uses helloFromC.txt). Click OK.
  4. Desktop β†’ Command Prompt:
    ftp 192.168.200.5
    Login as student / cisco.
  5. Upload your note:
    put helloFromB.txt
  6. Verify it is now on the server:
    dir
    You should see helloFromB.txt in the listing.
  7. quit to exit FTP.

3.5 Student A β€” Read your group-mates' notes

  1. Click DHCP_Server β†’ Services β†’ FTP. The file list at the bottom now contains helloFromB.txt and helloFromC.txt.
  2. To read them, use any client PC on your own topology (or add a temporary PC-A1 to your switch and configure it for DHCP):
    ftp 192.168.200.5
    get helloFromB.txt
    get helloFromC.txt
    quit
  3. Open them in Desktop β†’ Text Editor. Read your group-mates' messages out loud.

3.6 You are done with Session 3 when…

  • Each client (B and C) has run at least one get (download) successfully.
  • Each client has uploaded their own helloFrom*.txt to Student A's server.
  • Student A can see both helloFromB.txt and helloFromC.txt in the FTP file list and has read them.

Common Gotchas (all sessions)

SymptomLikely causeFix
Client gets 169.254.x.x (APIPA)DHCP DISCOVER never reached the server.Confirm DHCP Service: On and you clicked Save after editing the pool. In Session 2, also confirm both Multiuser clouds are green.
Multiuser cloud stays redHost firewall blocks port 38000, or wrong IP/password.On Student A: allow inbound TCP 38000. From B/C's host OS: ping <A's IP> must succeed first. Re-check the password is identical.
"Peer rejected" in MultiuserWrong password, or A's Listen mode isn't on.On A: Extensions β†’ Multiuser β†’ Listen… must show Listening on port 38000.
FTP put fails with permission errorThe FTP user doesn't have Write permission.On A: Services β†’ FTP β†’ edit the student user β†’ check Write β†’ click Save.
Two students can't ping each other's host OSDifferent networks, NAT separation, or campus-Wi-Fi client isolation.Use the Tailscale fallback in Session 2.6.
DHCP scope shows 0.0.0.0 start IPThe pool wasn't saved with the right gateway.Re-open the pool, set Default Gateway to 192.168.200.1, set Start IP to 192.168.200.10, click Save again.
Lab #8 video shows different IPsThe video uses 192.168.100.x then switches to 192.168.200.x.Use this lab's IP plan (192.168.200.0/24) throughout.

End of lab. This lab is not marked β€” there is nothing to submit. If your group finishes Session 3 early, try adding an HTTP service on Student A's server (Services β†’ HTTP, edit index.html) and have B and C visit http://192.168.200.5 from their PCs' Web Browser.